package com.ruoyi.jxsx.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 模拟实训对象 jxsx_training
 * 
 * @author ruoyi
 * @date 2025-04-14
 */
public class JxsxTraining extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 模拟实训id */
    private String trainingId;

    /** 实训课程id */
    @Excel(name = "实训课程id")
    private String courseId;

    /** 实训名称 */
    @Excel(name = "实训名称")
    private String trainingName;

    /** 实训性质 */
    @Excel(name = "实训性质")
    private String trainingNature;

    /** 模拟类型 */
    @Excel(name = "模拟类型")
    private String playType;

    /** 实训类型 */
    @Excel(name = "实训类型")
    private String trainingType;

    /** 模拟说明url */
    @Excel(name = "模拟说明url")
    private String trainingDescUrl;

    /** 实训流程 */
    @Excel(name = "实训流程")
    private String processId;

    /** 实训状态 */
    @Excel(name = "实训状态")
    private String STATUS;

    /** 发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publishTime;

    /** 发布人 */
    @Excel(name = "发布人")
    private String publisher;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /** 创建人角色 */
    @Excel(name = "创建人角色")
    private String creatorRole;

    /** 是否自动填充 */
    @Excel(name = "是否自动填充")
    private String isautofill;

    /** 授课方式 */
    @Excel(name = "授课方式")
    private String teachingMode;

    /** 是否删除 */
    @Excel(name = "是否删除")
    private String isdelete;

    /** 公开方式 */
    @Excel(name = "公开方式")
    private String publicMode;

    /** 点赞次数 */
    @Excel(name = "点赞次数")
    private Long thumbsupTimes;

    public void setTrainingId(String trainingId) 
    {
        this.trainingId = trainingId;
    }

    public String getTrainingId() 
    {
        return trainingId;
    }

    public void setCourseId(String courseId) 
    {
        this.courseId = courseId;
    }

    public String getCourseId() 
    {
        return courseId;
    }

    public void setTrainingName(String trainingName) 
    {
        this.trainingName = trainingName;
    }

    public String getTrainingName() 
    {
        return trainingName;
    }

    public void setTrainingNature(String trainingNature) 
    {
        this.trainingNature = trainingNature;
    }

    public String getTrainingNature() 
    {
        return trainingNature;
    }

    public void setPlayType(String playType) 
    {
        this.playType = playType;
    }

    public String getPlayType() 
    {
        return playType;
    }

    public void setTrainingType(String trainingType) 
    {
        this.trainingType = trainingType;
    }

    public String getTrainingType() 
    {
        return trainingType;
    }

    public void setTrainingDescUrl(String trainingDescUrl) 
    {
        this.trainingDescUrl = trainingDescUrl;
    }

    public String getTrainingDescUrl() 
    {
        return trainingDescUrl;
    }

    public void setProcessId(String processId) 
    {
        this.processId = processId;
    }

    public String getProcessId() 
    {
        return processId;
    }

    public void setSTATUS(String STATUS) 
    {
        this.STATUS = STATUS;
    }

    public String getSTATUS() 
    {
        return STATUS;
    }

    public void setPublishTime(Date publishTime) 
    {
        this.publishTime = publishTime;
    }

    public Date getPublishTime() 
    {
        return publishTime;
    }

    public void setPublisher(String publisher) 
    {
        this.publisher = publisher;
    }

    public String getPublisher() 
    {
        return publisher;
    }

    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }

    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }

    public void setCreatorRole(String creatorRole) 
    {
        this.creatorRole = creatorRole;
    }

    public String getCreatorRole() 
    {
        return creatorRole;
    }

    public void setIsautofill(String isautofill) 
    {
        this.isautofill = isautofill;
    }

    public String getIsautofill() 
    {
        return isautofill;
    }

    public void setTeachingMode(String teachingMode) 
    {
        this.teachingMode = teachingMode;
    }

    public String getTeachingMode() 
    {
        return teachingMode;
    }

    public void setIsdelete(String isdelete) 
    {
        this.isdelete = isdelete;
    }

    public String getIsdelete() 
    {
        return isdelete;
    }

    public void setPublicMode(String publicMode) 
    {
        this.publicMode = publicMode;
    }

    public String getPublicMode() 
    {
        return publicMode;
    }

    public void setThumbsupTimes(Long thumbsupTimes) 
    {
        this.thumbsupTimes = thumbsupTimes;
    }

    public Long getThumbsupTimes() 
    {
        return thumbsupTimes;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("trainingId", getTrainingId())
            .append("courseId", getCourseId())
            .append("trainingName", getTrainingName())
            .append("trainingNature", getTrainingNature())
            .append("playType", getPlayType())
            .append("trainingType", getTrainingType())
            .append("trainingDescUrl", getTrainingDescUrl())
            .append("processId", getProcessId())
            .append("STATUS", getSTATUS())
            .append("publishTime", getPublishTime())
            .append("publisher", getPublisher())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("creatorRole", getCreatorRole())
            .append("isautofill", getIsautofill())
            .append("teachingMode", getTeachingMode())
            .append("isdelete", getIsdelete())
            .append("publicMode", getPublicMode())
            .append("thumbsupTimes", getThumbsupTimes())
            .toString();
    }
}
